package com.zl.autocode.service.autocode;

import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateAddDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateDelDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateDetailDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateEditDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateQueryDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ReqDdlTemplateStateDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateAddDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateDelDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateDetailDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateEditDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateQueryDTO;
import com.zl.autocode.dto.autocode.ddlTemplate.ResDdlTemplateStateDTO;
import com.zl.common.dto.ReqDTO;

/**
 * 建表sql模板
 * @author ZL
 */
public interface IDdlTemplateService {

    /**
     * 查询
     */
    ResDdlTemplateQueryDTO queryDdlTemplateList(ReqDTO<ReqDdlTemplateQueryDTO> reqInfo) throws Exception;
    
    /**
     * 详情
     */
    ResDdlTemplateDetailDTO queryDdlTemplateDetail(ReqDTO<ReqDdlTemplateDetailDTO> reqInfo) throws Exception;
    
    /**
     * 新增
     */
    ResDdlTemplateAddDTO insertDdlTemplateInfo(ReqDTO<ReqDdlTemplateAddDTO> reqInfo) throws Exception;
    
    /**
     * 编辑
     */
    ResDdlTemplateEditDTO updateDdlTemplateInfo(ReqDTO<ReqDdlTemplateEditDTO> reqInfo) throws Exception;
    
    /**
     * 删除
     */
    ResDdlTemplateDelDTO deleteDdlTemplateInfo(ReqDTO<ReqDdlTemplateDelDTO> reqInfo) throws Exception;
    
    /**
     * 更新状态
     */
    ResDdlTemplateStateDTO updateDdlTemplateState(ReqDTO<ReqDdlTemplateStateDTO> reqInfo) throws Exception;
    
    /**
     * 删除
     */
    ResDdlTemplateDelDTO deleteDdlTemplateAndDetail(ReqDTO<ReqDdlTemplateDelDTO> reqInfo) throws Exception;
}